package com.bnz.manager.client;

import com.bnz.common.entity.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
// OpenFeign底层实现：使用了动态代理设计
// 1. 熔断的第一种方法，定义一个类实现接口来使用
//@FeignClient(value = "bnz-user",fallback = ManagerClientImpl.class)
// 2. 熔断的第二种方法，定义一个类实现fallbackFactory<>来使用
@FeignClient(value = "bnz-user",fallbackFactory = ManagerClientFactory.class)
public interface ManagerClient {
    @GetMapping("/user/list")
    @ResponseBody
    R list();
}
